#pragma once
#include "GLUIBase.h"
class GLGame
{
public:
	GLGame();
	void KillGLWindow();
	BOOL CreateGLWindow(wchar_t* title, int width, int height, int bits, bool fullscreenflag);
	static LRESULT WndProc(HWND	hWnd,UINT uMsg,WPARAM wParam,LPARAM	lParam);
	void DisplayFunc();
	void InitGameResource();
private:
		
	static void ReshapeFunc(int new_width, int new_height);
	static void KeyboardFunc(unsigned char key, int x, int y);	
	static void MotionFunc(int x, int y);
	static void MouseFunc(int button, int state, int x, int y);
	static void PassiveMotionFunc(int x, int y);
protected:
	static int m_nWndWidth, m_nWndHeight;
	bool	keys[256];			// Array Used For The Keyboard Routine
	bool	active;		// Window Active Flag Set To TRUE By Default
	bool	fullscreen;	// Fullscreen Flag Set To Fullscreen Mode By Default
	HDC			hDC;		// Private GDI Device Context
	HGLRC		hRC;		// Permanent Rendering Context
	HWND		hWnd;		// Holds Our Window Handle
	HINSTANCE	hInstance;		// Holds The Instance Of The Application
};